<?php




class_exists('Site') || require('../lib/class.site.php');
class_exists('Overmundo') || require('../lib/class.overmundo.php');
class_exists('Conecta') || require('../lib/class.conecta.php');
class_exists('Usuario') || require('../lib/class.usuario.php');


$garbage_timeout = 3600 * 24;
ini_set('session.gc_maxlifetime', $garbage_timeout);

session_start();
//$nomeSessao = session_name();
//if ((!$$nomeSessao) || ($usuarioValido == "")) {
if (!isset($minhaConexao))  {
	$minhaConexao = new Conecta();
}
if (!isset($meuSite)) {
	$meuSite = new Overmundo();
}

if (!isset($meuSite->linkid)) { 
	$meuSite->linkid = $minhaConexao->linkid;
}
//echo "(ANC $ancora)";

$usuarioValido = $meuSite->LimpaCampo($_SESSION["usuarioValido"]);
$lembraUsuario = $_COOKIE["lembraUsuario"];
$hashEsperado = md5($meuSite->ChaveLembra . $lembraUsuario);
if ($hashEsperado != $_COOKIE["hashUsuario"]) {
	$lembraUsuario = 0;
}
if (($usuarioValido) || ($lembraUsuario)) {
	if ($usuarioValido) {
		$usuarioLogado = new Usuario($meuSite->linkid, $usuarioValido);
	} else {
		$usuarioLogado = new Usuario($meuSite->linkid, $lembraUsuario);
	}
	if (($usuarioLogado->PegaStatus() == "ativo") && ($meuSite->OvermundoLiberaNivelParaUsuario($nivelPagina, $usuarioLogado->PegaNivel()))) {
	// nivel liberado
		if ($meuSite->OvermundoLiberaNivelParaUsuario("editor", $usuarioLogado->PegaNivel())) {
			$glbUsuarioEhEditor = 1;
		}
		
		if ($lembraUsuario) {
			//renova cookie
			setcookie("lembraUsuario", $meuSite->LimpaCampo($lembraUsuario), time()+(3600*24*30),'/');
			setcookie("hashUsuario", md5($meuSite->ChaveLembra . $meuSite->LimpaCampo($lembraUsuario)), time()+(3600*24*30),'/');
		}

		$_SESSION["estavaEm"] = $_SERVER["REQUEST_URI"] . $ancora;

	} else {

		$_SESSION["estavaEm"] = $_SERVER["REQUEST_URI"] . $ancora;
		$_SESSION["iaPara"] = $_SERVER["REQUEST_URI"] . $ancora;
		unset($_SESSION['usuarioValido']);
		session_unregister("usuarioValido");
		session_unset("usuarioValido");

		header('location: ../registro/login.php');
		exit();
	}
} else {
	$usuarioLogado = new Usuario($meuSite->linkid);
	//nivel bloqueado

	if ($_SESSION["meuPermalink"]) {
		$_SESSION["meuPermalink"] = "";
	}
	$_SESSION["estavaEm"] = $_SERVER["REQUEST_URI"] . $ancora;
	//die ("... :-/ " . $_SESSION["estavaEm"]);

	if (!$meuSite->OvermundoLiberaNivelParaUsuario($nivelPagina, "desconhecido")) {
			
		if ($_SESSION["meuPermalink"]) {
			$_SESSION["meuPermalink"] = "";
		}
		$_SESSION["iaPara"] = $_SERVER["REQUEST_URI"] . $ancora;
			
		header('location: ../registro/login.php');
		exit();
	}
}



?>